I want to share with you all, about navigation features in both WSS3.0 and MOSS. SharePoint Navigation features called Navigation Providers are enabled in the root directory of webapplications’s web.config file to access widely. These named Navigation providers are added to the <SiteMap> element under <System.Web> Section.
Named Providers are defined under WSS3.0 are,
· SPNavigationProvider
· SPSiteMapProvider
· SPContentMapProvider
· SPXmlContentMapProvider
· SPXmlAdminContentMapProvider*
*This named procedure only available in Central Administration webapplication
All the above providers share the same namespace called Microsoft.SharePoint.Navigation
MOSS included some named providers in addition to the WSS3.0 named providers.
· AdministrationQuickLaunchProvider
· SharedServicesQuickLaunchProvider
· GlobalNavSiteMapProvider
· CombinedNavSiteMapProvider
· CurrentNavSiteMapProvider
· CurrentNavSiteMapProviderNoEncode
· MySiteMapProvider
· MySiteLeftNavProvider
· SiteDirectoryCategoryProvider
· UsagePagesSiteMapProvider
Provider Names:
AdministrationQuickLaunchProvider:
Assembly |
Microsoft.Office.Server.UI |
Namespace |
Microsoft.Office.Server.UI |
Class Name |
Microsoft.Office.Server.Web. AdministrationQuickLaunchProvider |
Description |
QuickLaunch navigation provider for the central administration site |
Assembly Path |
GAC |
SharedServicesQuickLaunchProvider:
Assembly |
Microsoft.Office.Server.UI |
Namespace |
Microsoft.Office.Server.UI |
Class Name |
Microsoft.Office.Server.Web. SharedServicesQuickLaunchProvider |
Description |
QuickLaunch navigation provider for shared services administration sites |
Assembly Path |
GAC |
PortalSiteMapProvider:
Assembly |
Microsoft.SharePoint.Publishing |
Namespace |
Microsoft.SharePoint.Publishing.Navigation |
Class Name |
Microsoft.SharePoint.Publishing.Navigation. PortalSiteMapProvider |
Description |
Provides PortalSiteMapNode objects that represent a merging of the Windows SharePoint Services 3.0SPNavigation store and dynamic site structure, including sites and pages. This Provider has four navigation providers to merge with WSS3.0 Providers. |
Assembly Path |
..\12\ISAPI\ |
*The each different value of NavigationType property in PortalSiteMapProvider object represents the following providers. There are Current, Global & Combined navigationtypes.
GlobalNavSiteMapProvider:
NavigationType: Global
Description: Include SPNavigationNodes from navigation in the TopNavigationBar collection of Windows SharePoint Services; respect global inheritance and include or hide settings.
CombinedNavSiteMapProvider:
NavigationType: Combined
Description: This is attached to the global navigation or top navigation menu by default.
CurrentNavSiteMapProvider:
NavigationType: Current
Description: Gets the PortalSiteMapProvider object that is attached by default to the current navigation or Quick Launch, respect to current inheritance settings and include or hide settings.
CurrentNavSiteMapProviderNoEncode:
NavigationType: Current
EncodeOutput: false
Description: Gets the PortalSiteMapProvider object that is attached to the breadcrumb navigation by default.
*Gets or sets whether to HTML-encode the Title property of each PortalSiteMapNode object.
MySiteMapProvider:
Assembly |
Microsoft.SharePoint.Portal |
Namespace |
Microsoft.SharePoint.Portal |
Class Name |
Microsoft.SharePoint.Portal. MySiteMapProvider |
Description |
MySite provider that returns (MyProfile links) areas and based on the current user context. |
Assembly Path |
..\12\ISAPI\ |
MySiteLeftNavProvider:
Assembly |
Microsoft.SharePoint.Portal |
Namespace |
Microsoft.SharePoint.Portal |
Class Name |
Microsoft.SharePoint.Portal. MySiteLeftNavProvider |
Description |
MySite Left Nav provider that returns areas (Quick Launch) and based on the current user context. |
Assembly Path |
..\12\ISAPI\ |
SiteDirectoryCategoryProvider:
Assembly |
Microsoft.SharePoint.Portal |
Namespace |
Microsoft.SharePoint.Portal.WebControls |
Class Name |
Microsoft.SharePoint.Portal.WebControls. SiteDirectoryCategoryProvider |
Description |
SiteDirectory Category Provider returns the Category nodes present in the SiteDirectory Sites. |
Assembly Path |
..\12\ISAPI\ |
UsagePagesSiteMapProvider:
Assembly |
Microsoft.SharePoint.Portal |
Namespace |
Microsoft.SharePoint.Portal.Analytics |
Class Name |
Microsoft.SharePoint.Portal.Analytics. UsagePagesSiteMapProvider |
Description |
Provider for navigation in Portal Usage pages |
Assembly Path |
..\12\ISAPI\ |
SPNavigationProvider:
Assembly |
Microsoft.SharePoint |
Namespace |
Microsoft.SharePoint.Navigation |
Class Name |
Microsoft.SharePoint.Navigation. SPNavigationProvider |
Description |
Provides a base class for Windows SharePoint Services site-map providers that are specialized for SharePoint site navigation. Node “sid:1002” represents the QuickLaunchBar, Node “sid:1025” represents the TopNavigationBar |
Assembly Path |
..\12\ISAPI\ |
SPSiteMapProvider:
Assembly |
Microsoft.SharePoint |
Namespace |
Microsoft.SharePoint.Navigation |
Class Name |
Microsoft.SharePoint.Navigation. SPSiteMapProvider |
Description |
Provides the SiteMapNode objects that constitute the global content breadcrumb, which represents objects in the site hierarchy above the current site. |
Assembly Path |
..\12\ISAPI\ |
SPContentMapProvider:
Assembly |
Microsoft.SharePoint |
Namespace |
Microsoft.SharePoint.Navigation |
Class Name |
Microsoft.SharePoint.Navigation. SPContentMapProvider |
Description |
Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb. |
Assembly Path |
..\12\ISAPI\ |
SPXmlContentMapProvider:
Assembly |
Microsoft.SharePoint |
Namespace |
Microsoft.SharePoint.Navigation |
Class Name |
Microsoft.SharePoint.Navigation. SPXmlContentMapProvider |
Description |
Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb. |
Site-Map Path |
../ApplicationRootDirectory/_app_bin/layouts.sitemap |
SPXmlAdminContentMapProvider:
Available to only Central Administration application
Assembly |
Microsoft.SharePoint |
Namespace |
Microsoft.SharePoint.Navigation |
Class Name |
Microsoft.SharePoint.Navigation. SPXmlContentMapProvider |
Description |
Provides methods and properties for implementing a site map provider for contents of a Windows SharePoint Services site. This class provides the SiteMapNode objects that constitute the content breadcrumb, where “content” referes to the lists, folders, items, and list forms composing the breadcrumb. |
Site-Map Path |
../CentralAdministrationRootDirectory/_app_bin/admin.sitemap |
soon I will come with a deep details about each navigation Providers.
[…] need to write your own Navigation Provider, although MOSS comes with quite a few (listed here in Shantha Kumar’s blog, or create you own ASP.NET menu which you can also […]
By: Things to remember when branding SharePoint « Whats the point of Sharing? on February 23, 2009
at 4:34 am
Hey kumar, good information. recently i have a clinet requirement where i need to do the left navigation enhancements, basically we have sites and subsites structure and global bavigation tab structure has deeper sites untill 4 levels.
and the problem is when we are using a left navigation by selecting a particular global navigation ( which is a Tab from top level navigation structure), we can keep the sturcture inly to 2 levels after the two levels left navigation os completely changing to a structure where we can actually see only the sites under that particlar site but not the structured pathe from which it actually originated from. if you are not clear ….
this is the structure i have:
this is my global navigation:
site1 site2 site3
s1.1 s2.1
s1.1.1 s2.2
s1.1.2
s1.1.3
s1.1.3.1
s1.1.3.2
s1.2
s1.3
this is coming up in the left navigation when i clik on site1 tab
s1.1
s1.1.1
s1.1.2
s1.1.3
s1.2
s1.3
and if i clik again on s1.1.3 i am getting the following structure for left navigation
s1.1.3.1
s1.1.3.2
and the whole pathe for the entire directory structure is missing in the leftnavigation..
so I am trying to achieve this condition,,
can you please give me a suggestion as where needs to look to make a change sort of speak. please send me any thing that you feel appropriate for my condition to my email.. nveeragoni@gmail.com
By: naresh on February 26, 2009
at 4:35 am
Сенкс за инфу, почитал с интересом
By: HereosseMelo on March 21, 2009
at 1:39 pm
Hi,
i have a requirement to change the user name in the breadcrumb for MySite. Generally the bread crumb displays the site collection admin name, is it possible to change?
regards
Bhargavi
By: Bhargavi on April 1, 2009
at 5:27 pm
[…] the ways that ASP.NET controls could be leveraged. By this time he also understood the notion of navigation providers which meant that I was able to begin a serious dialogue on how to leverage available tools to get […]
By: Crossing Over – Tales of a SharePoint Psychic | End User SharePoint on September 2, 2009
at 12:30 pm
I am not a developer by trade and I’m learning WSS 3.0 as I go along. I’m trying to create drop down menus for my sites on my directory page which are not sub-sites of any parent site. For example, Directory top nav bar shows Site 1, Site 2, Site 3, and Site 4. I have Site 1 linked to Site A, B, C, & D, but these sites are not sub sites of Site 1. I’d like to know if someone can provide code to enable these “lettered” sites as a drop down on my directory page? I’ve researched to my wits end so any help would greatly be appreciated!
Thank you!
By: Dave on April 13, 2010
at 7:38 pm
[…] Consistent with its ASP.NET 2.0 foundation, SharePoint 2007 relies on the Provider model to feed navigation data to a control. This is usually a Microsoft.SharePoint.WebControls.AspMenu instance, which mostly is the same as it’s parent System.Web.UI.WebControls.Menu but tweaked to play nice with SharePoint. Most navigation providers are in the namespaces Microsoft.SharePoint.Navigation and Microsoft.SharePoint.Publishing.Navigation. Others such as those used by SSPs and My Sites are defined in assemblies primarily used by those respective components. Shantha Kumar has a great summary of the various SharePoint navigation providers and assemblies in this post. […]
By: LloydFaulkner.net | Control SharePoint navigation with a custom site map provider on May 13, 2010
at 10:08 pm
[…] Id: Id of the menu control. SiteMapProvider: Site map provider, see the list of site map providers here. I have used GlobalNavSiteMapProvider. StartingNode: Give starting node, if not mentioned then it […]
By: Custom site navigation for publishing sites on August 28, 2010
at 3:35 pm
[…] Consistent with its ASP.NET 2.0 foundation, SharePoint 2007 relies on the Provider model to feed navigation data to a control. This is usually a Microsoft.SharePoint.WebControls.AspMenu instance, which mostly is the same as it’s parent System.Web.UI.WebControls.Menu but tweaked to play nice with SharePoint. Most navigation providers are in the namespaces Microsoft.SharePoint.Navigation and Microsoft.SharePoint.Publishing.Navigation. Others such as those used by SSPs and My Sites are defined in assemblies primarily used by those respective components. Shantha Kumar has a great summary of the various SharePoint navigation providers and assemblies in this post. […]
By: Sharepoint Navigation SiteMap Provider « Sladescross's Blog on November 12, 2010
at 9:09 pm
Thank you.. This really helped
By: Huzefa on March 9, 2012
at 6:11 pm
[…] Site map provider, see the list of site map providers here. I have used […]
By: Custom site navigation for SharePoint publishing sites « Sandip Patil's blog on September 25, 2012
at 5:03 pm
Hi, there seems to be a typo with your sids. According to http://msdn.microsoft.com/en-us/library/bb964679(v=office.12).aspx, sid:1002 is for TopNavBar and sid:1025 for QuickLaunch.
By: JS on November 21, 2012
at 3:33 am
[…] SharePoint Navigation Providers – Part 1 « Welcome to ShanthaKumar’s Blog […]
By: Resources: SharePoint Navigation | lionadi on March 18, 2013
at 5:50 pm
Howdy! This is kind of off topic but I need some guidance from an
established blog. Is it difficult to set up your own blog?
I’m not very techincal but I can figure things out pretty fast. I’m thinking
about making my own but I’m not sure where to start. Do you have any ideas or suggestions? Thank you
By: methadone clinics in pa on May 28, 2013
at 7:47 am
This typpe of coat tends to thicken with temperature changes, or regular clipping, and it will also
hed out minimally, butt regularly, as well. In older dogs it is probably one of the
leading causes of death. Find Indian astrology with horoscope and live
astrological prediction , aries horoscope, daily, monthly,
yearly analysis of birth chart and individual prediction
of alll planet with gemstone.
By: webpage on January 29, 2014
at 9:03 pm
[…] There is a list of SiteMapProviders here: https://ktskumar.wordpress.com/2008/04/14/sharepoint-navigation-providers-part-1/ […]
By: Navigation cache problems in SharePoint, using the right SiteMapDataSource - José Quinto on September 24, 2015
at 1:43 pm
[…] la stessa origine, o aggiungere alcuni nuovi. Un link su cui (2007) datasouces sono disponibili: ktskumar.wordpress.com/2008/04/14/… Non tutte funzionano nel 2010. Speranza che aiuta un po’. (edit: si potrebbe aggiungere un […]
By: asp.net - Come: Manupilate SharePoint:AspMenu di controllo (Stile-saggio) on December 19, 2018
at 9:49 am